I. Field
The present invention generally relates to a password scheme that utilizes graphical features in conjunction with a user password. More particularly, the invention relates to the use of graphical features in conjunction with a user password to promote password recollection.
II. Background
Advances in technology have resulted in smaller and more powerful personal computing devices. For example, there currently exist a variety of portable personal computing devices, including wireless computing devices, such as portable wireless telephones, personal digital assistants (PDAs), and paging devices that are each small, lightweight, and can be easily carried by users. More specifically, the portable wireless telephones, for example, further include cellular telephones that communicate voice and data packets over wireless networks. Further, many such cellular telephones are being manufactured with relatively large increases in computing capabilities, and as such, are becoming tantamount to small personal computers and hand-held PDAs. Typically, these smaller and more powerful personal computing devices are severely resource constrained. For example, the screen size, amount of available memory and file system space, amount of input and output capabilities and processing capability may be each limited by the small size of the device. Because of such severe resource constraints, it is often typically desirable, for example, to maintain a limited quantity and/or size of input keys and other user input mechanisms residing on such personal computing devices. Such limited quantity and/or size of input mechanisms are generally known to produce poor user input interface functionality.
Some of these personal computing devices utilize application programming interfaces (“APIs”), sometimes referred to as runtime environments and software platforms, that are installed onto their local computer platform and which are used, for example, to simplify operation of such devices, such as by providing generalized calls for device specific resources. Further, some such APIs are also known to provide software developers the ability to create software applications that are fully executable on such devices. In addition, often such APIs are known to be operationally located between the computing device system software and the software applications such that the computing device computing functionality is made available to the software applications without requiring the software developer to have the specific computing device system source code. Further, some like APIs are known to provide mechanisms for processing user passwords in such a manner as to restrict and control access to such personal computing devices. In some instances such password processing is performed, at least in part, remotely to the personal computing device.
Examples of such an APIs, some of which are discussed in more detail below, include those currently publicly available versions, including versions 3.1, of the Binary Runtime Environment for Wireless® (BREW®) developed by Qualcomm, Inc., of San Diego, Calif. BREW® is sometimes described as a thin veneer existing over a computing device's (typically a wireless cellular phone) operating system, which, among other features, provides interfaces to hardware features particularly found on personal computing devices. BREW® is further characterized by, at least, the one advantage of being able to be provided on such personal computing devices at a relatively low cost with respect to demands on such device resources and with respect to the price paid by consumers for devices containing the BREW® API. Other features known to be associated with BREW® include its end-to-end software distribution platform that provides a variety of benefits for wireless service operators, software developers and computing device consumers. At least one such currently available end-to-end software distribution platform includes logic distributed over a server-client architecture, where the server performs, for example, billing, security and application distribution functionality, and the client performs, for example, application execution, security and user interface functionality.
Regarding providing mechanisms for processing user passwords in such a manner as to restrict and control access to such personal computing devices to only authorized users, including the processing of passwords remotely to such personal computing devices, many systems typically achieve such restricted access, in part, by recording keystrokes received through an input device or mechanism. In one example, each key represents a single potential component for use in a multi-component password scheme. Here, a device with 10 keys is capable of as many unique passwords as there are combinations of 10 keys allows. However, in another embodiment, where such embodiment includes the additional functionality of recognizing of the simultaneous pressing of a multiple keys, such as the use of a shift key along with one of the ten keys, to essentially expand the 10 keys functionality into a 20 key functionality where each key, in essence, has two potential values. Here, the number of possible unique keys is expanded from the number of available unique passwords available with 10 keys to the expanded number of available unique passwords available with the 20 keys. Each of such proposed designs, including the 10 or the 20 key designs, have the common feature of having the available number of components being limited in some manner to the number of input keys available on the device. It should be recognized that as the number of potential key combination increases, and/or the number of digits used in a password increases, so increases the problems associated with password recognition as experienced by users of such devices.
There currently exists other password mechanisms that provide relatively robust password input capabilities where, for example, such mechanisms allow for the entry of a extensive range of ASCII characters. One such password mechanism includes the use of multitap functionality. With multitap a key has the potential of representing multiple values, where, for example, a key may have displayed on its surface the values or components “2 abc.” Here, the user can operate the personal computing device by pressing the “2 abc” key one or more times to select the desired letter or number. For example, the 2 key is pressed once for the letter “a,” twice for “b,” three times for c and four times for the number “2”. It is not uncommon for such multitap password mechanisms to also include functionality that provides for detecting a user's attempt to input consecutive letters on the same key.
An example is the word “no,” because both “n” and “o” are on the 6 key (“6 nmo”), a user must press the 6 key two times to enter the letter “n,” wait for the system to timeout, and then press the 6 key three more to enter the letter “o.” Another known approach is to press a special key to skip the timeout, thus allowing direct entry of the next character using the same key. Many of the multitap methods are known to be widely used in hand-held devices. However, multitap method is typically viewed to be a slow and inefficient way to enter text and is generally known to be disliked by users. Here, in addition to the difficulties raised by adding additional characters, numbers, etc., that can make up any particular digit/component of a password, namely, the increased number of potential digit combinations also increases the difficulty for the user to remember which combination was recorded as any particular password, there is also introduced the difficulties and drawbacks of using a multitap method that requires slow and numerous key presses to achieve a relatively small length password combination.
A variety of modern password schemes also introduce factors that further increase the likelihood that users will be unable to recall their passwords. For example, many modern password schemes require users to change their passwords periodically, where users are forced to re-memorize new passwords for each of such password changes. Such frequent changes in passwords increase the likelihood that such users will not remember such newly changed passwords. Further, in is also currently not uncommon for users to have multiple passwords across many systems also increasing the likelihood that a user may not recall one or more passwords for any one or more particular systems.
At least one known approach to assist users in their ability to remember lengthy passwords is the use of password schemes based on graphics-based passwords rather than text-based passwords. In one known system a graphical password scheme operates to display a scene on a devices screen, where the user, using a stylus, connects one or more of the objects displayed on the screen, where it is the unique pattern generated by the user connection of the objects that is recorded as the password. Such systems provide the benefit of utilizing a graphics-based password, which are arguably easier for users to recall than text-based password, but such systems have the limitations, including being only graphically based, (i.e., cannot be entered in a text-based form), where such limitations include requiring: the use of an interactive screen, the use of a relatively high resolution screen known to be not typically suitable for resource constrained devices, the display objects on a graphical display that are not part of the password (i.e., those objects displayed on the screen, but not otherwise used by the user when connections are drawn between other objects), and the problem of having such graphical passwords stolen by nearby individuals viewing the screen as the password is displayed or entered.
Accordingly it would be advantageous to provide password schemes for computing devices that includes features that provide for the use of graphical features of passwords in a manner that would assist the recollection of passwords. It would also be advantageous to provide a new system that does not require an exclusive choice be made between graphical based passwords and text based passwords. In addition, it would also be advantageous to provide graphically enabled password schemes that do not require the use of interactive screens for the inputting of such passwords. It would also be advantageous to provide graphically enabled password schemes that do not require the use of high resolution screens. It would also be advantageous to provide graphically enabled password schemes that limit the items displayed on a screen to those items that directly correspond to parts or components of the password. An additional advantage would be to provide a password scheme that provides a graphical mode in conjunction with an ability to prevent “shoulder surfing” of passwords.